package com.personal.system.entity.approval;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 审批规则对象 audit_rule
 */
@Data
public class AuditRule implements Serializable{
    private static final long serialVersionUID = 1L;

    /** 规则id */
    @TableId(type = IdType.ASSIGN_UUID)
    private String ruleId;

    /** 规则编号 */
    private String ruleNo;

    /** 规则名称 */
    private String ruleName;

    /** 审批模块 */
    private String approvalModule;

    /** 规则大类 */
    private String ruleClass;

    /** 销售主体(多个逗号分割) */
    private String compId;

    /** 销售主体名称(多个逗号分割) */
    private String compName;

    /** 审批时限 */
    private Integer auditTime;

    /** 规则小类(00:运力确认、01:销售确认、 02:气采否运贸、 03:气销 、04:排程、05销售确认、06高于推荐报价、07低于等于推荐报价、08气采是运贸、09常规毛利*80%<=(销售价格-销售指导价)< 常规毛利*200%、10常规毛利*0%<=(销售价格-销售指导价)< 常规毛利*80% 或 常规毛利*200%<=（销售价格-销售指导价）、11(销售价格-销售指导价)<0) */
    private String auditType;

    private String feeType;
    private String bearType;
    private String approvalCriteria;

    /** 审核触发人(多个逗号分割) */
    private String auditTrigger;

    /** 审核提交用户id */
    private String auditSubmitUser;

    /** 是否启用(00:是、01:否) */
    private String isDelete;

    /** 审批条件数值 */
    private BigDecimal approvalNumber;

    /** 创建人 */
    private String createUser;

    /** 创建时间 */
    private Date createTime;

    /** 更新人 */
    private String updateUser;

    /** 更新人名称 */
    private String updateName;

    /** 更新时间 */
    private Date updateTime;

    @TableField(exist = false)
    private String approvalLevel;

    @TableField(exist = false)
    private List<AuditRuleDetail> auditRuleDetails;
}
